package com.ruoyi.work.domain;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

/**
 * 计件工作清单对象 t_work_bill
 *
 * @author xwj
 * @date 2024-08-14
 */
@TableName("t_work_bill")
@Data
public class WorkBill extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 编号
     */
    @Excel(name = "编号")
    @ApiModelProperty("编号")
    private String no;

    /**
     * 前编号
     */
    @Excel(name = "前编号")
    @ApiModelProperty("前编号")
    private String prevNo;

    /**
     * 订单id
     */
    @Excel(name = "订单id")
    @ApiModelProperty("订单id")
    private Long orderId;

    @TableField(exist = false)
    private String orderName;

    /**
     * 产品id
     */
    @Excel(name = "产品id")
    @ApiModelProperty("产品id")
    private Long productId;

    @TableField(exist = false)
    private String productName;

    /**
     * 日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("日期")
    private Date effectDate;

    /**
     * 工单配置表id
     */
    @Excel(name = "工单配置表id")
    @ApiModelProperty("工单配置表id")
    private Long workOrderId;
    @TableField(exist = false)
    private String workOrderName;
    @TableField(exist = false)
    private String workOrderType;

    /**
     * 创建人id
     */
    @Excel(name = "创建人id")
    @ApiModelProperty("创建人id")
    private Long createId;
    private String createBy;
    private Date createTime;

    /**
     * 更新人id
     */
    @Excel(name = "更新人id")
    @ApiModelProperty("更新人id")
    private Long updateId;
    private Date updateTime;
    private String updateBy;

    private String checkName;

    @TableField(exist = false)
    private List<WorkBillDetail> detailList; // 详情

    @TableField(exist = false)
    private List<Long> deleteIds; // 删除id

    @TableField(exist = false)
    private List<WorkBillStaffs> staffs; // 共享员工

    @TableField(exist = false)
    private List<WorkBillKiln> kilnList; // 窑烧列表
    @TableField(exist = false)
    private List<Long> deleteKilnIds; // 窑烧删除


    // 时间查询条件
    @TableField(exist = false)
    private String timeStart1;
    @TableField(exist = false)
    private String timeEnd1;

    @TableField(exist = false)
    private String timeStart2;
    @TableField(exist = false)
    private String timeEnd2;

}
